// function handleRequest(max, urls) {
//     return new Promise((resolve) => {
//         if (urls.length === 0) {
//             resolve([]);
//             return;
//         }
//         const result = [];
//         let index = 0;

//         async function request() {
//             if (index >= urls.length) {
//                 return;
//             }
//             const i = index;
//             const url = urls[index];
//             index++;
//             try {
//                 const res = await ajax(url);
//                 result[i] = res;
//             } catch (error) {
//                 result[i] = error;
//             } finally {
//                 // 这个是 相当于 当前的这个通道完成后在继续 调用下一个接口
//                 request();
//             }
//         }
//         // 这个是请求的并发数和url数量选最小的
//         const times = Math.min(max, urls.length);
//         for (let i = 0; i < times; i++) {
//             request();
//         }

//         resolve(result);
//     });
// }

// const urls = []
// for (let i = 0; i < 100; i++) {
//     urls.push('http://localhost:3000/getData')
// }
// concurrentRequest(urls).then(res => {
//     console.log(res);
// })

const phoneRule = /^1([3-9])([0-9]{8})/
console.log(phoneRule.test(18720721125));